#pragma once
#include"global.h"
#include<vector>
#include<tuple>
#include<bitset>
using namespace std;
#define MAX_ORDER 2000

class LFSR
{
public:
	static vector<uint8_t> generate(vector<uint8_t> f,vector<uint8_t> seed,int size);
	static tuple<bitset<MAX_ORDER+1>,int> synthesis(vector<uint8_t> data);
	static vector<uint8_t> get(int order);
};

